iT邦幫忙

2021 iThome 鐵人賽

DAY 20
0
自我挑戰組

Rails測試寫起乃!!!系列 第 20

Day20 測試寫起乃 - $CHILD_STATUS

  • 分享至 

  • xImage
  •  

這其實與測試無關是我最近看得很新奇的東西就來額外補充一下XD

在 rb file 裡如果用反引號 可以執行 shell 指令

# $ rails console
2.6.6 :001 > `rails server` #會真的啟動server

所以如果想要在 rb file 裡撰寫 shell 指令可以用這種方式

那該如何判斷此 shell 指令到底有沒有完成?

$CHILD_STATUS 就派上用場了

$CHILD_STATUS

$CHILD_STATUS 等同於 $? 他會回傳上一個指令的狀態

2.6.6 :001 > `code .` #會真的幫你開啟 vscode
""
2.6.6 :002 > $?
#<Process::Status: pid 71680 exit 0>
2.6.6 :003 > $?.exited?
true
2.6.6 :004 > $?.pid
71680
# 沒有執行成功
2.6.6 :009 > `open /frgr`
The file /frgr does not exist.
""
2.6.6 :010 > $?
#<Process::Status: pid 71726 exit 1>

若 > 1 就表示未完成,可能有錯誤。
若 == 0 表示有成功執行

這也能查看到上一個 pid 的 ID

雖然很少用到,但還是覺得很新奇XD 分享一下


上一篇
Day19 測試寫起乃 - 撰寫Cucumber
下一篇
Day21 測試寫起乃 - Webmock
系列文
Rails測試寫起乃!!!30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言